package com.kaikeba.service;

import com.kaikeba.bean.CourierExpress;
import com.kaikeba.dao.BaseCourierExpressDao;
import com.kaikeba.dao.impl.CourierExpressDaoMysql;

import java.util.List;
import java.util.Map;

public class CourierExpressService {
    //创建一个快递员对象
    private static CourierExpressDaoMysql dao = new CourierExpressDaoMysql();
    /**
     * 用于查询总的快递员人数+日注册人数
     *
     * @return 返回一个map集合{data_size:总数,data_day:日注册量}
     */

    public static Map<String, Integer> console() {
        return dao.console();
    }

    /**
     * 用于查询所有快递
     *
     * @param limit
     * @param offset
     * @param pageNumber
     * @return 返回一个装有快递员所有信息的集合
     */
    public static List<CourierExpress> findAll(boolean limit, int offset, int pageNumber) {
        return dao.findAll(limit,offset,pageNumber);
    }

    /**
     * 通过快递员手机号查询该快递员的所有信息
     *
     * @param userPhone 快递员手机号
     * @return 返回一个快递员信息
     */
    public static CourierExpress findByPhone(String userPhone) {
        return dao.findByPhone(userPhone);
    }

    /**
     * 用于注册快递员
     *
     * @param e 注册快递员的信息
     * @return true表示注册成功  false表示注册失败
     */
    public static boolean insert(CourierExpress e) {
        return dao.insert(e);
    }

    /**
     * 通过快递员编号id修改快递员信息
     *
     * @param id                快递员编号id
     * @param newCourierExpress 新的快递员信息
     * @return true表示修改成功  false表示修改失败
     */
    public static boolean update(int id, CourierExpress newCourierExpress) {
        return dao.update(id,newCourierExpress);
    }

    /**
     * 通过快递员id删除快递员所有信息
     *
     * @param id 快递员编号id
     * @return true表示删除成功  false表示删除失败
     */

    public static boolean delete(int id) {
        return dao.delete(id);
    }

    public static CourierExpress findByIdCard(String idCard){
        return dao.findByIdCard(idCard);
    }
}
